package com.xnew.entity.memberArchives;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import org.springframework.data.annotation.Transient;

import java.io.Serializable;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


/**
 * @Author: Zhozh
 * @Description: 其他公司股东信息表
 * @DateTime: 2022/4/30
 * @Params:
 * @Return
 */
@TableName("t10_oth_orgtyp_srhlr_info")
public class OthOrgtypSrhlrInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
    * 股东信息编号
    */
    @TableId("srhlr_info_no")
    private String srhlrInfoNo;

    /**
    * 机构用户编号
    */
    private String orgUserNo;

    /**
    * 信息报送审核状态编码
    */
    private String infsubAuditStatusCode;

    /**
    * 信息录入时间
    */
    private String infoInputTime;

    /**
    * 股东信息更新时间
    */
    private String srhlrInfoUpdateTime;

    /**
    * 股东名称
    */
    private String srhlrName;

    /**
    * 持股比例
    */
    private String hdstkRatio;

    /**
    * 主营业务范围
    */
    private String mainBusiRange;

    /**
    * 是否关闭状态
    */
    private String isCloseStatus;

    /**
    * 信息录入人编号
    */
    private String infoInputPsnNo;

    /**
    * 股东信息更新人编号
    */
    private String srhlrInfoUpdatePsnNo;

    /**
     * 审核日志
     */
    @TableField(exist = false)
    private List<AuditLog> auditLogList;


    public List<AuditLog> getAuditLogList() {
        return auditLogList;
    }

    public void setAuditLogList(List<AuditLog> auditLogList) {
        this.auditLogList = auditLogList;
    }

    @TableField(exist = false)
    private List<MemInfoChgHist> histList;

    public List<MemInfoChgHist> getHistList() {
        return histList;
    }

    public void setHistList(List<MemInfoChgHist> histList) {
        this.histList = histList;
    }


    public OthOrgtypSrhlrInfo() {
    }

    public String getSrhlrInfoNo() {
        return srhlrInfoNo;
    }

    public void setSrhlrInfoNo(String srhlrInfoNo) {
        this.srhlrInfoNo = srhlrInfoNo;
    }

    public String getOrgUserNo() {
        return orgUserNo;
    }

    public void setOrgUserNo(String orgUserNo) {
        this.orgUserNo = orgUserNo;
    }

    public String getInfsubAuditStatusCode() {
        return infsubAuditStatusCode;
    }

    public void setInfsubAuditStatusCode(String infsubAuditStatusCode) {
        this.infsubAuditStatusCode = infsubAuditStatusCode;
    }

    public String getInfoInputTime() {
        return infoInputTime;
    }

    public void setInfoInputTime(String infoInputTime) {
        this.infoInputTime = infoInputTime;
    }

    public String getSrhlrInfoUpdateTime() {
        return srhlrInfoUpdateTime;
    }

    public void setSrhlrInfoUpdateTime(String srhlrInfoUpdateTime) {
        this.srhlrInfoUpdateTime = srhlrInfoUpdateTime;
    }

    public String getSrhlrName() {
        return srhlrName;
    }

    public void setSrhlrName(String srhlrName) {
        this.srhlrName = srhlrName;
    }

    public String getHdstkRatio() {
        return hdstkRatio;
    }

    public void setHdstkRatio(String hdstkRatio) {
        this.hdstkRatio = hdstkRatio;
    }

    public String getMainBusiRange() {
        return mainBusiRange;
    }

    public void setMainBusiRange(String mainBusiRange) {
        this.mainBusiRange = mainBusiRange;
    }

    public String getIsCloseStatus() {
        return isCloseStatus;
    }

    public void setIsCloseStatus(String isCloseStatus) {
        this.isCloseStatus = isCloseStatus;
    }

    public String getInfoInputPsnNo() {
        return infoInputPsnNo;
    }

    public void setInfoInputPsnNo(String infoInputPsnNo) {
        this.infoInputPsnNo = infoInputPsnNo;
    }

    public String getSrhlrInfoUpdatePsnNo() {
        return srhlrInfoUpdatePsnNo;
    }

    public void setSrhlrInfoUpdatePsnNo(String srhlrInfoUpdatePsnNo) {
        this.srhlrInfoUpdatePsnNo = srhlrInfoUpdatePsnNo;
    }

    @Transient
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @TableField(exist = false)
    private Map<String, Object> dictNameResult = new HashMap<String, Object>();

    public Map<String, Object> getDictNameResult() {
        return dictNameResult;
    }

    public void setDictNameResult(Map<String, Object> dictNameResult) {
        this.dictNameResult = dictNameResult;
    }

    //数据字典
    @Transient
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String[] buildIncludeField(){
        return new String[]{"infsubAuditStatusCode","auditLogList"};
    }

    /*数据字典*/
    @Transient
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String[] buildIncludeType(){
        return new String[]{"DG0149","LIST"};
    }

}